JBoss Community Archive (Read Only)

RHQ 4.5

RHQ 4.5.0

This is the RHQ 4.5 release. It was released on September 27th, 2012

Issues identified

We have identified two issues with this release and have since released RHQ 4.5.1

  • Upgrading from an existing rhq 4.4 installation may fail BZ 861127

  • The child resources subtab of the inventory tab does not show child resources for non-platforms BZ 861128

We do not recommend using RHQ 4.5.0 for production.

Upgrade note

If upgrading from RHQ 4.2 (4.3 and 4.4 are not affected) you must first make a manual change to your database. Have a look at the first note on the RHQ 4.4 release notes

Please note
  • Some browsers (most likely Webkit based like Safari and Chrome) may not automatically forward you from the installer to the login page. Manually switch to

    http://localhost:7080/coregui/
  • RHQ 4.5 should work on Java7, but has not yet been extensively tested (feedback is welcome).

  • The embedded agent may not work, as it has its limitations and known issues, we strongly recommend to always use external agents.

New Features (since RHQ 4.4 )

CommonJS support in Javascript CLI scripts

The long awaited feature enabling truly modular approach to CLI scripting is finally here. It is now possible to "require" other scripts into your script and use the functionality included in them. This feature is available both in the standalone CLI and in the alert notifications running CLI scripts on the server.

The feature also includes a modular approach to locating the scripts so you can load scripts like:

var myFuncs = require("rhq://repositories/my-repository/my-funcs");

for downloading your script called my-funcs.js from a repository called my-repository on the RHQ server. For more on modularity, see the following wiki pages Script Modularity - Javascript, Script Sources.

Python support in CLI

RHQ 4.5.0 comes with support for scripting the RHQ server with Python. Both the CLI and the scripted alert notifications on the server support running Python scripts (using Jython). The interactive CLI doesn't support code completion in this first release but otherwise is fully functional.

You can start the CLI with Python by supplying it with the language command line argument like this:

rhq-cli.sh ... --language=python

The alert notifications determine the language of the script to invoke by file extension ("js" for javascript, "py" for python).

Read more about Python support in RHQ on Script Modularity - Python.

REST api

The REST api has been enhanced to support Events. This API is included to get the effort started to build a REST interface into RHQ so that the server is better accessible from other tools and languages.

This Api is considered mostly stable now; there will still be changes though.

To access the API, go to http://localhost:7080/rest/ See also Design-REST and this blog post

  • RESTEasy has been updated to version 2.3.4.Final

  • Metrics for groups have been added

You can find a documentation of the URIs and parameters on the SourcForge download page.

GUI

  • The events tab now allows to search/filter by date range.

  • The Search bar has been rewritten to use SmartGWT instead of GWT.

Server

  • Postgres 9.2 has been added to the supported versions of Postgres

Plugins

  • After many deprecation warnings, the attribute 'default' has been removed from the c:option element in the plugin descriptor. BZ 742298

  • The MySQL plugin allows now to disable automatic table import per database. BZ  797356 Contributed by Elias Ross

  • The Database plugin has been improved BZ 796983 Contributed by Elias Ross

  • It is now possible to deploy jar-less plugins (see this blog post) BZ 741682

  • The Oracle Plugin has been enhanced (BZ 836664, BZ 846079 and BZ 855980) by Richard Hensman

  • Improvements of the Script plugin (BZ 849394) by Elias Ross

  • Prevention of a leak in the JMX plugin (BZ 848938) by Elias Ross

  • Piql-queries failed if the pid had extra whitespace (BZ 839080) by Elias Ross

  • Many improvements in the AS7-plugin

Sigar

Sigar was updated to version 1.6.5.132-3. This newer version is built from the same source as 1.6.5.132 distributed in RHQ 4.4 and prior releases. However, the newer native binaries for Linux x86 and x86_64 require a minimum glibc version of 2.3.4. Please see BZ 857441 for more details.

See also

There is now a project RHQ samples on GitHub available that lists additional sample code that works together with RHQ. This also contains examples in other programming languages than Java to access the REST api.

Known Issues

Deprecations

JAX-WS based Webservices are deprecated and will be removed in RHQ 4.6

Translations

The GWT part of the UI has partially been translated into German, Portuguese, Japanese, Chinese, Czech and Russian. The language should be automatically selected depending on your browser settings. You can explicitly access other translations by appending a locale specifier in the URL. For example to select the German translation you would append ?locale=de to the base URL, e.g. http://localhost:7080/coregui/?locale=de.

Supported locales are:

  • zh for Chinese

  • cs for Czech

  • de for German

  • ja for Japanese

  • pt for Portuguese

  • ru for Russian

Please ping us if you want to help translating the UI to your language. Translations are done via the translations project on GitHub, which also has some instructions on how to start.

Bug reporting

Please report all bugs you find in Bugzilla. If you find a bug that has been recorded in the above list, please leave a comment on them especially if this needs special steps to reproduce.

List of resolved Bugzilla entries

Please consult Bugzilla with a target release of RHQ 4.5.0 for a list of resolved issues

Download

You can download the release here.

Commit log

  • Elias Ross <elias_ross@apple.com> (6):

    • BZ 797356 - Allow to disable automatic table discovery per database

    • BZ 796983 - Improve discovery and use of column formatted metrics of database plugin

    • BZ 839087 ] adding support for Legacy types when generating names for discovered types. - also applying original naming scheme for consistency.

    • rhq-script-plugin does not always capture process output

    • BZ 839080 - ProcessInfoQuery does not properly handle pidfile with line ending or whitespace

    • BZ 848938 - JMX Plugin - Leaking connector thread

  • Heiko W. Rupp <hwr@redhat.com> (88):

    • BZ 818552 - allow deletion of user defined path

    • BZ 820272 Fix jdg slot name and default home directory detection.

    • BZ 802810 - if after a config change a reload is needed, signal this to the user.

    • Revert "BZ 802810 - if after a config change a reload is needed, signal this to the user."

    • BZ 821380 Follow the change of as7 saying "no metric available"

    • BZ 802810 - if after a config change a reload is needed, signal this to the user.

    • BZ 821696 Add a display name to the _maxConnections metric

    • BZ 814181 - The inner item is a handler, not handlers

    • Those properties are not all needed and the server may return different subsets. So mark as optional.

    • BZ 822886 - Prevent a NPE if a context is not deployed (e.g. no app deployed)

    • Add a test for jndi-view operation. Enhance package documentation a little.

    • BZ 788487 - Fix issues with manual add. Also prevent some operations to be run, as we can's start processes on machines without agents.

    • BZ 824889 support outbound sockets

    • BZ 824878 Support crud on network interfaces

    • If we can't connect tell the user so (manually picked from 03c692ff88 )

    • BZ 811288 - If a property name ends in :expr, we need to set a displayName

    • Add support for GroupDefinitions to the REST api

    • BZ 826008 Deliver both signal reload/restart to the server.

    • BZ 782598 Fix bug in pseudo-metric collection and remove formerly needed enable/disable wrapper

    • Fix typo

    • Add a link to group definitions.

    • BZ 826228 . Suppress AS7-ISPN type if JDG is deployed. Also remove JDG types from AS7-descriptor

    • First cut at REST api documentation with tooling to convert to HTML and Docbook

    • Some improvements to GroupDefinition handlingin the REST api

    • Add creation of REST-api-documentation from the annotations.

    • Allow for start+end time when obtaining aggregates in the REST api.

    • We need a repository, not a pluginRepository for the annotations.

    • We need a repository, not a pluginRepository for the annotations.

    • Comment out again. OpenJDK 6 does not have the com.sun.mirror classes.

    • Port over to javax.annotations.processing api.

    • BZ 828349 - a server-group of a managed server can now be changed.

    • BZ 827652 - fix a typo.

    • Fix path to generated .dbx.xml file

    • Improvements and bugfixes in the rest docs generator. Only translate the api out file so that we don't trigger errors

    • BZ 784164 - if the search filter is wrapped in (), then don't wrap again.

    • BZ 742298 - Remove deprecated attribute "default" from c:option

    • Remove forgotten print statements.

    • Many improvements around the rest api docs. NaN-metrics are now shown as NaN in the html view

    • Add created media types to the docs.

    • Better describe response.

    • BZ 829394 Use the name from resource key, as this is available in UI and CLI

    • Various Improvements in the REST-api (mostly around alerts)

    • BZ 831513 Fill some defaults, as otherwise destination creation fails

    • Add support for jsonp. Return application/javascript with explicit encoding

    • More improvements especially in the area of linking between resources.

    • Don't require a special jsonp media type as jQuery seems to have issues. Rename parameter name to that clashes are less likely.

    • Allow to limit alerts by prio and resource. Add linking from/to resource. Fix a bug in the genericString template.

    • Display availability history.

    • Improvements in operation scheduling.

    • Improve support for resource operation scheduling

    • Prevent a possible "No session exception"

    • Use the same job id over the place to prevent IndexOutOfBoundExceptions later.

    • Expose more group properties.

    • BZ 834820 Eliminate call to isLast() which is problematic on Oracle

    • Update RESTEasy to 2.3.4.Final and enable GZIP compression on some methods.

    • BZ 797331 - If a network adapter is down on plugin component start, mark it as disabled.

    • Don't shut down the PC between tests and don't assume we have a MySQL server running.

    • Allow more endpoints to return gzip'ed data

    • Don't fail if a resource has been deleted, but is still listed in favorites.

    • BZ 837903 - remove thread ids from configuration and add an operation to retrieve them.

    • Support metrics for compatible groups.

    • BZ 838686 - Provide the server status (OperationMode) to unprivileged users.

    • Don't pass the query param in the path.

    • Make AlertManagerBeanTest I18N aware.

    • BZ 74168 - allow to deploy descriptor-only "agent" plugins.

    • No-op plugin that is meant as base for jar-less plugins that should not be discovered on the agent side, but which are served through the server side REST-api.

    • Allow to pass the number of data points to the backend.

    • Test very long tokens.

    • Explicitly remove availability entries, as there is no cascade delete from resource to availability.

    • BZ 839080 - accept pid files that also contain whitespace or line endings (\n \r )

    • Fix a small typo.

    • Put the standalone container start scripts directly in the agent distro, to make it easier to use them for developers.

    • Allow to run the plugin validator standalone. If done so, also print warnings and errors to stdout/stderr.

    • BZ 844217 - Use the correct name for the deployments directory (for bundles).

    • BZ 845118 provide delegates for the tow classes that were moved to util/ as other plugins may still rely on the old package structure.

    • BZ 841047 Don't assume a host name of 'master', but get it via api if it is not set. If this does not work, get it via hostname resolution.

    • Add Richard Hensman to the list of contributors.

    • BZ 839320 When a property is required and the user has not explicitly choosen a value and there is a defaultValue, use this.

    • BZ 838670 Mark more configuration elements as r/w, as underyling AS allows that now.

    • BZ 846385 - Make sure to use the JDG types only when he product found is JDG and the other way around.

    • BZ 848030 - jmxName can be null, so act accordingly. Also put the jmxName into the connection properties of the created resource.

    • BZ 844217 - do not "hardcode" the deployment directory at discovery time, but make it a trait so that changes the user is making will be relected.

    • Update plugin generator poms.

    • Update pom-template.

    • BZ 856484 - add support for Postgres 9.2 and later 9er versions.

    • BZ 856695 - Allow to filter events by time range

    • Add support for events in the REST api.

    • Make the rest-docs processor also output the value classes used in the REST api.

  • Hudson <jboss-qa-internal@redhat.com> (2):

    • development RHQ_4.5.0-SNAPSHOT

    • tag RHQ_4_5_0

  • Ian Springer <ian.springer@redhat.com> (73):

    • improve plugin display name and description

    • minor: fix a couple typos in the help text

    • BZ 818662 ] add help text to the two top-level Server types, which describes the new startScript plugin config props; also improve the descriptions on the properties themselves (https://bugzilla.redhat.com/show_bug.cgi?id=818662)

    • add a "contentType" attribute to the "help" complexType in rhq-plugin.xsd, and add a corresponding transient field+accessors in the AbstractPlugin and ResourceType domain objects; for backward compatibility, the default value for the attribute is "text/html", however moving forward, we can start using contentType="text/confluence" to make help text more readable and maintainable

    • update plugindoc so it publishes pages to Confluence with 1) a plugin page for each plugin, and 2) below each plugin page, pages for each of the types defined by that plugin, organized hierarchically exactly the same as the actual type hierarchy

    • BZ 820445 ] fix so a "negative seek offset" IOException does not occur when PropertiesFileUpdate.update() is called on a non-existent file or an empty file (https://bugzilla.redhat.com/show_bug.cgi?id=820445)

    • add support for running the itests against EAP 6.0 ER7

    • BZ 819145 ] code in discovery that figures out System property (sysprop) values by parsing the server command line now processes P/-properties options, in addition to -Dxxx options (https://bugzilla.redhat.com/show_bug.cgi?id=819145)

    • get rid of tabs

    • BZ 802003 ] embedded JVM discovery code no longer tries to discover JVM process and connect to it via JMX remoting - it now just uses its parent Tomcat or JBoss AS Resource's EMSConnection, which is what it's supposed to do (https://bugzilla.redhat.com/show_bug.cgi?id=802003)

    • BZ 784571 ] add a Child Resources item to the resource tree resource context menu, which takes the user to the Inventory > Children tab for the resource (https://bugzilla.redhat.com/show_bug.cgi?id=784571)

    • BZ 820648 ] code that discovers the domain controller address now handles the --master-port host controller command line option (https://bugzilla.redhat.com/show_bug.cgi?id=820648)

    • minor: improve description of 'startScriptEnv' plugin config prop

    • BZ 820709 ] stop reading HTTP management responses when the server-specified Content-Length bytes have been read (https://bugzilla.redhat.com/show_bug.cgi?id=820709)

    • BZ 820709 ] fix regression where the new HTTP stream-reading code would throw a "java.net.ProtocolException: Server redirected too many times" when the AS7 server returned 307 (Temporary Redirect) responses, which is what it does when no management users are configured yet (https://bugzilla.redhat.com/show_bug.cgi?id=820709)

    • minor: (scale back some logging from INFO to DEBUG; improve some log messages)

    • minor: improve logging and error handling

    • use a smaller buffer for reading HTTP responses, since the responses are generally < 1K in size

    • add a test that checks if discovery is run more than once per child type

    • BZ 822228 ] "discovery -f" now prints a message and aborts if a discovery scan is already in progress (https://bugzilla.redhat.com/show_bug.cgi?id=822228)

    • BZ 818522 ] improve GUI messages and Agent logging for child Resource creation (https://bugzilla.redhat.com/show_bug.cgi?id=818522)

    • add support for running itests against EAP6 ER8

    • fix some test failures

    • BZ 822736 ] fix so extra jars don't get included in the plugin jar's lib dir (https://bugzilla.redhat.com/show_bug.cgi?id=822736)

    • BZ 823026 ] change Product Name trait to displayType="summary" and change Server Code Name and Server Version traits to displayType="detail" (https://bugzilla.redhat.com/show_bug.cgi?id=823026)

    • reformat XML

    • use 2-space indent, rather than 1-space

    • BZ 823558 ] check that server's basedir has not changed since discovery needs to be added to server components' start() method (https://bugzilla.redhat.com/show_bug.cgi?id=823558)

    • BZ 823558 ] a small fix to the original fix - getAvailability() now throws InvalidPluginConfigurationException when validation of server attributes fails (https://bugzilla.redhat.com/show_bug.cgi?id=823558)

    • BZ 823558 ] another fix to the original fix - start() now initializes this.connection before calling getAvailability() (https://bugzilla.redhat.com/show_bug.cgi?id=823558)

    • make sure the port offsets used by the itest AS7 instances are fully configurable

    • upgrade antrun plugin from 1.6 to 1.7

    • don't log an ERROR + stack trace if we fail to read a response (specifically, if a call to conn.getResponseCode() or conn.getRepsonseMessage() throws an IOE), since it may just mean the server has gone down - instead just let the IOE bubble up a bit and get wrapped in a failure Result object and returned

    • in the post-itest phase, only delete the AS7 install dir under /tmp, and not the AS7 dist zipfile

    • BZ 823558 ] add itests that test the server attribute validation that is now done in BaseServerComponent.start(), and make sure to null out this.lastAvail in BaseServerComponent.stop() so the attribute validation is guaranteed to happen during a component restart (https://bugzilla.redhat.com/show_bug.cgi?id=823558)

    • fix antrun error

    • fix additional errors caused by the recent upgrade of the antrun plugin

    • fix "Failed to create assembly: Error creating assembly archive rhq-client: You must set at least one file." build error

    • eradicate all remaining usages of v1.1 of the antrun plugin

    • use <target>...</target>, rather than the deprecated <tasks>...</tasks>, in all antrun plugin executions

    • BZ 813066 ] expose new 'multicastAddress' trait on Standalone Server and Managed Server Resources that are running in HA/cluster mode (https://bugzilla.redhat.com/show_bug.cgi?id=813066)

    • BZ 813066 ] exclude the 'multicastAddress' trait from the null-metric-values test for Managed Servers, since a null value is expected when the managed servers are not in HA mode (https://bugzilla.redhat.com/show_bug.cgi?id=813066)

    • BZ 824401 ] handle condition of a missing parent resourceContainer more gracefully in a few places, since it's normal in situations where the corresponding resource was just uninventoried - we now log a DEBUG message, rather than an ERROR message + stack trace; add a PC integration test that verifies Resource uninventory works (https://bugzilla.redhat.com/show_bug.cgi?id=824401)

    • BZ 802003 ] fix bug in original fix, which caused embedded JVM's to never get discovered (https://bugzilla.redhat.com/show_bug.cgi?id=802003)

    • upgrade TestNG from 6.4 to 6.5.2

    • ensure tests run in a predictable order

    • fix bug where DocBook files were only being generated for the root resource types

    • various fixes and improvements to generation of DocBook plugin docs

    • minor: fix typo in comment

    • fix isRootType() so it returns true for a top-level service element that has no runs-inside child elements; misc minor cleanup

    • BZ 820570 ] fix a bug in the original fix, which caused an "IllegalArgumentException: URI is not absolute" error when trying to parse a -P option value that was a relative path (https://bugzilla.redhat.com/show_bug.cgi?id=820570)

    • BZ 814305 ] throw RuntimeExceptions in SLSB methods for manual-add and create-child if 1) the new Resource's type is a singleton and a child Resource with that type already exists or 2) the new Resource's type does not support manual-add or the appropriate flavor of create-child; add new unit tests to verify the RuntimeExceptions are thrown (https://bugzilla.redhat.com/show_bug.cgi?id=814305)

    • improve logging to help debug NPE occurring in unit test when running in Jenkins

    • BZ 827203 ] prevent infinite auto-switching between auto-group nodes occurs after fast-clicking between two auto-group nodes (https://bugzilla.redhat.com/show_bug.cgi?id=827203)

    • add support for running AS7 itests against EAP 6.0 CR1

    • an IRC bot for #rhq

    • BZ 827447 ] prevent subject session timeouts from occurring during registration of agent plugins with tons of types (e.g. the as7 plugin) (https://bugzilla.redhat.com/show_bug.cgi?id=827447)

    • add support for command line args for specifying IRC server and channel

    • attempt to get auto-reconnecting working after a VPN connection is lost and then recreated

    • upgrade enforcer plugin from 1.0-beta-1 to 1.1

    • various minor improvements

    • a couple small fixes the server's help section

    • add an echo command

    • a few handy shell scripts

    • add needed stuff to get JBoss Nexus to accept the artifact

    • upgrade Arquillian bom from 1.0.0.Final to 1.0.1.Final

    • add support for EAP 6.0.0 (GA) and remove support for all the EAP 6.0 ER's

    • BZ 834353 ] update discovery to recognize BRMS as a separate product type (https://bugzilla.redhat.com/show_bug.cgi?id=834353)

    • BZ 834434 ] add tooltips to STRING and LONG_STRING simple props that show full property values (https://bugzilla.redhat.com/show_bug.cgi?id=834434)

    • get the as5 plugin descriptor generator compiling again

    • delete the itest AS7 home dir before, as well as after, the itests run

    • BZ 835113 ] fix so EJB2 MDB Resources do not erroneously return an avail of DOWN (https://bugzilla.redhat.com/show_bug.cgi?id=835113)

    • BZ 835687 ] upgrade Postgres driver from 9.1-901.jdbc4 to 9.1-902.jdbc4 (https://bugzilla.redhat.com/show_bug.cgi?id=835687)

  • Jay Shaughnessy <jshaughn@redhat.com> (70):

    • Use our own I18N for Table loading and Table empty. This ensures we can do what we want, and also that we have I18N from the very start of the application.

    • BZ 817604 - Trying to delete a Dynagroup Definition gives db constraint errors] Protect against a couple of issues that result from a stale Compat Group tree in the GUI. If a compatible group changes to mixed while a GUI session is actively navigating the compat group tree then bad things can happen, including this BZ.

    • BZ 817185 - Child compatible group name displayed as ... in navigation tree after a group member's name is changed] - Now displays localized version of "Group of [] for: - AutoCluster Tree Node - AutoCluster Group Detail Title bar - AutoCluster Group Detail General properties - No longer allow editing of AutoCluster Group Detail General properties

    • BZ 818761 - "Unable to re-install or upgrade server on same host and port due to 404 /coregui/ not found"] An attempt at fixing this by not caching portal wars index.html.

    • BZ 820700 - if one or more of the Resources in an avail report is no longer inventoried, then the avail manager EJB throws a hibernate ConstraintViolationException, and the entire avail report fails to be persisted] Allow for this possible sync issue. Although unlikely it is possible given various up/down states of the server and agent. Protect against stale resources being sent in an avail report, log decent INFO level messages.

    • 772223 related work - Add tests for StartScriptConfiguration - basic util test - long (invalid) value handling for startScriptEnv or startScriptArg

    • 772223 related work Further update startScript prop descriptions with feedback from field.

    • 819145 Added analogous AS5 test - trivial, added license to another test file

    • BZ 820709 - plugin-container with two or more AS7 host controllers in inventory, a full discovery scan takes an unacceptably long time] - Working on discovery algorithm. Trying to make it more efficient recursion. - remove unnecessary/invalid avail checking - add a little jdoc

    • re-arrange this test so that only one discovery takes place before we do the redundancy checking.

    • 820700 Add a negative test to justify cherry-picking the fix for this bug.

    • BZ 823942 - Deadlock in plugin container (AS7 Inventory)] Tweek the MeasurementManager initialization to leverage the ResourceContainer because it may not be valid to assume the Resource hierarchy can be correctly accessed as is. Also, add some logging in the area of code that seemed like it may have been causing a block.

    • 823942 Prefer resource container Resource when recursing hierarchy Given recent optimizations it's necessary to use the ResourceContainer's version of a resource when requiring the most up to date version of the resource. This commit ensures that when walking the hierarchy we prefer the container's version of the resource when getting children.

    • 823942 Update test code related to fixes for this issue.

    • Eclipse update of this file (for some unknown reason)

    • 811288 Not part of the fix, additional logging.

    • BZ 824778 - Schedules cannot be deleted] This was odd. (nod to lkrejci for doing original analysis) SmartGWT for whatever reason seemd to be getting confused as to what sort of object that SubjectRecord was. It seems to stem from setting a ListGrid "object" as an attribute on a ListGridRecord. Perhaps under the covers it is sometimes a Java object and sometimes a javascript object. Either way, remove the use of it completely and just use simple attributes to store the subject name and id. It adds an attribute but overall simplfies things (and, as a bonus, works).

    • eclipse change

    • BZ 826047 - Slow availability check can hang discovery] - Now uses proxy and applies configured avail timeout to getAvailability() calls. - Also, now only perform an avail check on server resources or if the current avail is NOT UP. (i.e. assume UP services are still UP, which eliminates a lot of avail checking for the standard case)

    • BZ 826673 - RFE: Add ability to maximize a dashboard portlet] - add this ability - also, fix a bug in portlet removal where the portlet window was not being fully removed from the current dashboard.

    • BZ 827150 - Dashboard portlets left running queries in background] There were a few issues here. First, whenever the dash was re-built (when the refresh period changed or a portlet was deleted, and maybe other scenarios) old portlets may have been left with stale references, leaving them around, undrawn, but for auto-refresh portlets, still querying the server at their refresh intervals. Note that this happens even when proper destroy() calls have been made. Second, we had protection in place not to refresh hidden portlets, but undrawn/visible portlets (like the ones in this scenario) still refreshed. So, I beefed up that check just to block backend queries in a similar situation. Third, we shouldn't even have been rebuilding the dash when changing the refresh interval, the refresh period update was already being applied to the existing portlets. So, stopped that from happening. This may have actually solved a different problem I've noticed, a double-rendering of the dash on he very first login for a user. I think because we set the refresh period for the first time.

    • BZ 826503 - Log in screen available but user is not able to log in for several minutes after installation] This is due to the fact that the problem in bug 684450 is still unresolved, and will likely remain that way until we move to a new version of AS as the underlying RHQ server platform. When we switch contexts between the installer and portal war we start having the problem described in https://issues.jboss.org/browse/JBWEB-188. The fact that it returns a 200 response code even though the request fails is what fools the installer into thinking that the server is ready. So: - Change Startup servlet to pass back an unusual response code (288)on success - Change the installer's header.jsp to look for 288 as opposed to 200. - Change StartupServlet the polling time from 5 to 15 seconds to reduce the number of coyote exceptions. - Update the installer message to let users know that it could be several minutes in this state.

    • BZ 826094 - installer DB user password is logged to the Server log in cleartext] Omit the db password properyy from the raw settings log message. Note that the raw values are subject to change by the installer, so its actually the latter, submitted value log message that shows what is really being applied.

    • A bunch of updates to the Eclipse .classpath file after a recent clean repo build.

    • Fix test failure. What goes up must go down and what gets prepared must get unprepared.

    • BZ 829433 - When MeasurementCollectorRunner logs metric collections is falling behind it should include metric details] Add more information in debug mode to help determine what may be holding up the agent metric collections.

    • 818664 Add more <help> text to plugin descriptor for generated doc re: start script handling. - Also, reformat to indent=2 spaces.

    • [] 827634 Unable to enter a Drift Detection Definition Base Directory fileSystem path that contains parenthesis - Add support for Windows allowance of parentheses in directory names. - Add support for more flexible specification of the drift base directory in a Drift Filter. - Add relevant tests for new features.

    • 785237 trivial - remove some obsolete comments

    • trivial - fix some inline comments

    • 732571 - Admin Test page operation Snapshot Measurement Tables (snapshotMeasurementTables)fails against Oracle Fixed this for Oracle. Also, change the JSP page to better display the results for this and some other options.

    • BZ 830325 - Downloads view links in Connectors and CLI Alert Scripts sections are centered, rather than left-aligned] - Fix this so they line up and use the same label as the other stack sections. - Also, consolidate the "Link" I18N message as well as properly comment missing translations for this page.

    • [] added version attribute

    • Fix a couple of I18N issues. Remove some newly inroduced duplicates of common values. And convert commented czech to commented english.

    • 831254 - resource tree's right-mouse context menu item "Import" is empty 814305 - Dealing with singletons in inventory Fix the context menu issue which was introduced with the original fix for the singleton filtering support. There were a few issues here. In the changes made to the context menu: - fix confusion around and lack of complete support for both create child and import - consolidate duplicate server calls, narrow the results with more criteria, and avoid the call when not needed. Additionally, the analogous change was not made to the Inventory->Child Resources view which also offers Create Child and Import. The change here ended up being tricky because it involved Table's TableActions, and filtering the menu button values in the footer. This led to a ** CHANGE IN Table **, to add more robust support for subclasses overriding default InitializableView support. In short, Table subclasses can now perfom async calls in onInit() if they properly override isInitialized() and be assured that configureTable() will be called after initialization is complete.

    • 830158 - java.sql.BatchUpdateException when you uninventory everything right after importing it The exception is due to badness when trying to uninventory a platform that is actively merging in new resources. This is an unlikely use case. This commit does not try to prevent the problem but rather adds some exception handling and an improved log message indicating the probably scenario, and suggesting the user retry after waiting for the resources to be merged.

    • 831272 - remove all attempts at pluralization to fix i18n messages Get rid of the bogus message construction. Also, fix up some I18N stuff.

    • 831152 - Repositories Delete Selected Repository button leads to exception page when no permission is given A private repo should be able to be deleted by its owner, even if the owner does not have MANAGE_REPOSITORIES permission.

    • 830463 - Re-enabling (actually, updating) an alert definition clears condition logs for existing alerts This is sort of complex. The underlying issue is that AlertDefinitionManagerBean.updateAlertDefinition(updatedDef) replaces existing AlertConditions with updatedDef.conditions. The detached conditions were deleted (via Hibernate and DELETE_ORPHAN) regardless of the fact that they very possibly linked to AlertConditionLog records for existing Alerts. These log records are what you need to display the actual condition evaluations that explain why the alert was fired.

    • Fix test that was failingon Linux because it wasn't properly normalizing the include filter's basedir path. This was a test-only problem and does not affect production code.

    • 830463 - Re-enabling (actually, updating) an alert definition clears condition logs for existing alerts Some follow-on work. Add optimization such that if conditions are not being updated we don't detach the AlertCondition from the def, since they are unchanged. - Add related unit testing - re-enable the tests in AlertConditionTest, which pass but for some reason were not enabled. - Fix a few parameter names that I missed updating last time.

    • Another attempt at fixing this test failure. It's hard to fix linux failures on win images/author/images/icons/emoticons/smile.gif

    • [] There were two ways to go here. One was to add special case handling for the various filter paths that equate to ".". The other was to normalize in the Filter constructor. Since I tried option 1 and missed a spot in my first try to fix it, I've now opted for option 2. The downside is only that what the user types may get normalized to ".". But I added some more description text to state as much. Also, existing Filter paths using "/" or "./" will need to be updated to "." manually, but I doubt there are any out there currently since it wasn't working.

    • Provide more verbose Exception information in DEBUG mode.

    • BZ 835113 - EJB2 MDBs are DOWN in JON UI] Restructure getAvailability() and getManagedComponent() to remove ambiguity in UNKNOWN runState handling as well as provide consistent Exception throwing/handling, and ManagedComponent refresh. Simplify the override point for getManagedComponent.

    • Add some null/empty string protection, even though the string really should never be empty.

    • BZ 839256 - FailoverListManagerBeanTest fail on OpenJDK 1.7] Tweak algorithm for better distribution and also relax test verification to allow for minor imbalance at deeper levels of failover.

    • BZ 839256 - FailoverListManagerBeanTest fail on OpenJDK 1.7] The fixes that helped java7 hurt java6, so for java6's sake, relax the unit test balancing validation a tick more.

    • BZ 828428 - org.rhq.enterprise.server.cloud.instance.CacheConsistencyManagerBean ERROR ORA-01795: maximum number of expressions in a list is 1000] This time the problem is 1000 or more agents on a server (with status <> 0). Batch the updates to avoid the Oracle limitation.

    • Add new scripting api module to eclipse source path

    • BZ 846375 - Resource list views should have name field as initial sort and limit ancestry to client side sorting only] - Apply default initial sort on Name field for resource list views (using ResourceSearchView) - note, updated constructor chaining to be more efficient while adding default sort behavior. Removed an unused constructor. - Disable server-side sorting on Ancestry since sorting on the encoded value is not useful to the end user. Allow client-side sorting when all rows are fetched, this gives the desired alpha sort on the display value.

    • BZ 838683 - If RHQ server is down, UI shows "Server returned FAILURE with no error message"] More recent versions of Firefox, and possibly other browsers, have changed the request's response code in this situation. Added updated handling. Also, fixed an I18N issue.

    • BZ 847014 - Resource tree not complete when more than 200 children] Allow an unlimited number of children when expanding the tree node. Although this may create a large vertical expansion, it may also be what the user wants. See BZ comments for more on the approach and alternatives but basically, take this easy approach until it's clear that users, or UX, want something else.

    • Get rid of annoying maven warning by specifying to use the latest release version.

    • BZ 847138 - RFE: Add indication that resource tree is loading or expanding] Replace the default TreeGrid loading message, which was weak and only showed up briefly at initial tree creation, with more robust loading... message display when loading, expanding or updating the tree. This helps situations where fairly large tree load/updates take place, typically due to large numbers of siblings or Autogroup creation/manipulation.

    • - Fix issues with Filtering UNCOMMITTED resources in a few NamedQueries. - Remove unnecessary decl of ResourceGroupManager in test class, use the base class var.

    • BZ 846353 - ORA-02049 during upgrade from JON-3.1.0.GA to JON-3.1.1.ER1 with Oracle] After a lot of investigation it seems that the problem occurs occasionally when we remove obsolete properties from resource configuration. It does not happen every time, on fact it's fairly rare, although for the same DB, and the same plugin update, it is repeatable. This makes it seem like the locking issue is due mainly to unpredictable locking at the db level, and likely the fact that we occasionally hit a page lock due to some other prior update to the config table. Since the config table stores so many different types of data it's not obvious how we would identify the conflict.

    • Upate this dev plugin to also allow for a delay when reporting metrics. This allows the plugin to be used for "slow" collection reporting when simulating an overloaded agent or misbehaving plugin.

    • BZ 784571 - Resource tree not complete when more than 200 children] We decided not to allow an unlimited number of child resources be returned when expanding a node in the tree. But there are major problems with simply limiting the children to 200. This is what we do today, and the results are unordered. Meaning you can lose any number of resources of any types and it is not possible to know what you are missing. And we don't indicate that the tree is incomplete. If we add ordering (alphabetical by resource name) you still lose any number of resources, but always the same ones. In this way it is much easier to realize that you are missing child resources (and/or entire child types) because the resources returned obviously stop as some lexigraphical point.

    • Adding perftest scenario support to help test bug 784571

    • Reformat only!

    • Add unit test for new ResourceManager.findResourcesByCriteriaBounded().

    • trivial - fix some DriftManager logging

    • BZ 849751 - RFE: protect resource tree from direct navigation to a resource with many siblings] Apply the new ResourceManager.findResourcesByCriteriaBounded() method to getResourceLineageAndSiblings() in order to similarly bound the initial tree building fetch. Currently getResourceLineageAndSiblings() will use the defaults applied to findResourcesByCriteriaBounded(), although we may find that providing separate overrides will be useful.

    • Make drift def sync more efficient, and possibly avoid an NPE that was seen intermittently. - DriftServerServiceImpl.getDriftDefinitions() now only generates Map entries for resources with drift definitions, avoiding unnecessary list creation and subsequent processing. - Added jdoc to that effect - Changed private DriftSyncManager.syncConfigs() to syncDriftDefinitions for clarity.

    • BZ 852561 - AlertCondition.name is null in database after JON 2.4 to 3.1 upgrade] From an RHQ perspective this should have affected upgrades to RHQ 4.4. Add a db upgrade step to convert relevant alert condition rows to the new format.

    • BZ 852561 - AlertCondition.name is null in database after JON 2.4 to 3.1 upgrade] fix merge issue

    • Eclipse .classpath update

    • BZ 856833 - as7 CLI invocation for a DomainDeployment Proxy deployToServerGroup fails] This really had nothing to do with AS7, and everything to do with the ResourceProxy code in the CLI, when it attempted to translate command-line params to an operation Configuration.

    • BZ 856819 - as7, CLI NullPointerException when trying to deploy war on EAP 6 in domain mode using CLI and createPackageBackedResource method] The AS7 deployment code was relying on PackageVersion.filename being set. But this is not a reliable field, it only reflects the filename of the file uploaded to provide the content. It can't be used because: - It is not set unless the file is tryly uploaded (likein he GUI via PackageVersionFileUploadServlet) - It is not set via the CLI, or potentially other mechanisms, which supply only the binary content - It is not necessarily a valid reflection of the content (i.e. not unique, etc)

  • Jirka Kremser <jkremser@redhat.com> (48):

    • BZ 819565 - Project rhq-core-client-api's pom.xml forces java 1.5] Java compiler's version 1.5 was raised to 1.6

    • Merge branch 'master' of git://git.fedorahosted.org/git/rhq/rhq

    • BZ 821100 ] Adding new metrics into currently selected view using the user's preferences

    • minor: more general iface on the left hand side; parametrization of class

    • l16n 1st part

    • l16n 2nd part

    • l16n 3rd part

    • l16n 4th part

    • Complete localization for Czech language

    • BZ 788997 ] Setting the maximum length of the description to 100 characters

    • typo ('mavev -> maven')

    • BZ 814305 ] Before the context menu is shown the check for singleton resurces is performed (when creating child resources or importing the resources manually)

    • BZ 805503 - Recently triggered alerts report does not show resource in details view] Resource name and resource ancestry form fields have been added.

    • BZ 818174 - Config editor: description of a simple property in list is not show on add] description added; i18n

    • Merge branch 'master' of git://git.fedorahosted.org/git/rhq/rhq

    • i18n

    • BZ 805503 - Recently triggered alerts report does not show resource in details view] More space.

    • BZ 818173 - Config editor : description of map (of simples) is not shown] description of map added on the top

    • BZ 816086 - Inventory tree focuses previously selected node when expanding others] Added the check whether expanding the currently selected node or some other

    • 830871 - Bundle disable deploy icon not available fixed, also little refactoring

    • BZ 588507 - WAR file deployed against Tomcat shows an incorrect installation date] Instalation date is now taken from InstalledPackage instance instead of PackageVersion instance

    • BZ 815421 - Discovery Q: even with no entry, "select all" is active] If there are no enties, "select all" button is disabled

    • BZ 815321 - Platform alert conditions for availability (Goes Disabled and Goes Unknown ) should be removed] Options have been reomved when adding alert condition for resource of type platform

    • BZ 675150 - GWT: Alert definition : Conditions : metrics not sorted] Added new a class for serted version of the SelectItem

    • BZ 835574 - When setting up workspace, the dynamically generated classes are not added to classpath] Solved using the org.codehaus.mojo:build-helper-maven-plugin. It adds the generated sources. NOTE: the mvn "process-resources" should be checked in the IDE Maven settings

    • fix parametrization of class

    • formatting only

    • [] Added support for "getting live value" for resource's traits as well as for group's traits

    • Monitoring -> Tables -> Get Live Value, the resulting modal window has now sorted records

    • BZ 839720 - The alert notifications dialog initially shows wrong UI] This was caused by commit 1c7723b

    • BZ 808175 ] typo

    • BZ 839720 ] tests

    • adding a plugin for creating the dependency graph among maven modules when running mvn site:site

    • BZ 822795 - Search filter not working in bundle deployment wizard] Added filtering by the name of the bundle.

    • Fixing the typo in constructor and bad usage of this constructor in 1 test

    • BZ 845277 - JBoss ON dashboard shows messed metric graph on IE 8/9] Version of gflot upgraded to 2.4.2 (it contains the excanvas library for IE8/9 support of HTML canvas el.), version of sparkline upgraded to 2.0, version of jquery upgraded to 1.7.2

    • BZ 845277 ] - quick fix: removed the doctype declaration and removed overcasting to int

    • BZ 818083 - IE 8.0 GUI components not aligned properly on monitoring tab] Added invisible form item on the right side

    • BZ 851239 - Globally uncaught exception on clicking the link Bundles->Repositories->JBoss Patches] Defensive programming - check for null/empty list -> exception is not thrown

    • BZ 850818 - Globally uncaught exception on clicking OK button while adding CLI Script alert notification to the alert definition] Added the check whether the repository has been picked

    • BZ 814305 - Dealing with singletons in inventory] Refresh button now takes into consideration the already created singletons and they are not populated in the create/import child combobox

    • BZ 773626 - Failed to load resource composite data error when refreshing Inventory page (Unavailable Servers, Servers, etc)] handling the exception on the client side and re-fetch the data

    • BZ 856599 - Creating a compatible group with no members will create a mixed group] If the other type of a group is created the user is navigated to the right list and there is also notification if an empty compatible group (=mixed) is created.

    • refactoring: removed unused classes (CallTimeDataSource and CallTimeView) and marking some methods used only by portal-war as deprecated

    • refactoring: removed unused method (findCallTimeDataForResource) it was used by class removed in commit 705254b

    • BZ 848494 - Metric graphs on dashboards uses the client's time for obtaining the data] System.currentTimeMillis() is now invoked on the server side for the metric graphs

    • BZ 858533 - Global uncaught exception with 'New' group creation from 'All groups'] NPE was thrown, it was regression of b54ce46

    • Tests for MeasurementDataManagerBean testing adding and finding the MeasurementTraitData (in particular methods: MeasurementDataManagerBean.addTraitData(), MeasurementDataManagerBean.findTraits(), MeasurementDataManagerBean.findTraitsByCriteria(), and MeasurementDataManagerBean.findCurrentTraitsForResource())

  • John Mazzitelli <mazz@redhat.com> (48):

    • BZ 818751 ] don't use the live config if it was empty - we need to get the default template

    • BZ 819897 ] filter out all non-committed resources from some group queries

    • BZ 819897 ] fix the left-hand tree on the group page - don't show non-committed resources

    • plugin doc generator updated its swizzle dependency - tell eclipse to use the new dep

    • BZ 820981BZ 819897 fix some group queries that did not properly filter non-committed resources

    • opps.. fix test method name

    • BZ 820981BZ 819897 fix unit tests that now must ensure they put new resources in the committed inventory state

    • BZ 820716 ] fix search bar group availability query

    • BZ 820629 ] upgrade xercesImpl due to CVE-2009-2625

    • update eclipse classpath for the upgraded resteasy deps

    • BZ 818094 ] add a blank.gif explicitly for the standard skin to fix a SmartGWT 3.0 bug. Once we upgrade to a new SmartGWT, we should revert this commit (basically delete this .gif and its containing directories).

    • BZ 820709 ] add some unit tests that show discovery working with disc components getting called only one time. all tests still run so it looks like nothing regressed.

    • BZ 822861 ] older tomcat versions (like Tomcat 5) do not even have this executorName MBean attribute, make sure we account for this.

    • BZ 823860 ] the korean and chinese i18n props file had the help url props in them. No need to do this since these aren't really strings that need translation and if we ever change these url fragments (which we need to in this bz), we need to not only change the java code that produces the default message .props but we would then have to remember to change these files. Taking these out won't break anything since those languages will not have these props in their own .props file thus will fallback to the default messages props file which WILL have them (they are autogenerated by the java code)

    • BZ 823860 ] get the installer startup props links to work. Get them to not require the prefix "" so we can have JON be able to use these without requiring JON docs to have "" in the URL. this also cleans up some of the other non-en i18n properties files - they don't need some of the non-translatable properties (this way we don't have N places to change the strings, we just have 1 now)

    • BZ 824898 ] provide the ability to see the root cause for a particular message in the message center.

    • BZ 824898 ] just add ability to test with custom detail message in the test page

    • BZ 824898 ] change to the throwables util class: if we were told not to show the class name but the message was null, show the class name at least - otherwise, you'll get an even more useless string of "null"

    • BZ 824898 ] fix the logging so we can see the full, real, exception with the ID. this lets you match the gwt client exception with the full server side exception. for some reason, this class lost the ability to log messages to the server log file - i think it happened when we changed to gwt logging

    • BZ 820716 ] unit tests to test the search bar queries when using the availability keyword

    • BZ 824898 ] if it looks like the exception message came from our ThrowableUtil (i.e. we look for the " -> " marker in the message), then we extract the last message after the last -> marker and assume that is the root cause.

    • BZ 810124 ] fix the failover list test so it doesn't wait too long for each port test to fail.

    • BZ 828905 ] fix the version ordering column when deleting a bundle version

    • BZ 829455 ] script plugin operation can now be told to kill on timeout or not and can be given a timeout to wait (or 0 to not wait)

    • BZ 830996 ] allow the OperationManager thread pool support multiple concurrent operations

    • BZ 830998 ] while working on this class for this BZ I saw these TODOs to i18n some messages. So while this doesn't address the issue in the BZ, it does need to get done. this is just new i18n messages.

    • BZ 830998 ] implement operation cancel in the UI. we already had the server-side and agent-side implemented, we just needed to expose it in the GUI. This commit does this. There is now a Cancel button in the group and resource operation history view.

    • BZ 831297 ] canceled operations that actually were able to be interrupted and canceled will now show a status of canceled with the canceled icon in the history view

    • extract two test methods that are mysteriously failing in AgentComm2Test - put them in their own separate test classes. These are now passing more regularly on my box. Let's see how jenkins likes this.

    • BZ 825338 ] fix the doc links to point to the new jboss.org RHQ confluence docs

    • BZ 832204 ] protect against npe when the message bar disappears but user still has the root cause context menu option and selects it

    • provide more information to the user when the security token is bad

    • BZ 535514 ] remote client will not connect to the server if the server is not supported. for this commit, "not supported" means the server and cli/remote client aren't the same version.

    • provide an eclipse external tool to allow eclipse developer to easily purge their RHQ dev-container server from extra plugins. this leaves intact a small subset of plugins. this allows for faster rhq server startup.

    • add the ability to inspect the changed configuration in the test page that tests the config editor

    • fix eclipse classpath - location for swizzle is wrong

    • BZ 828843 ] fix bundle deploy wizard's configuration editor initialization so required properties that didn't exist in the live deployment config are set to their default values

    • add oracle and snmptrapd plugin test modules to eclipse classpath

    • BZ protect measurement facet from mucking with the plugin container's metric schedules. the bulk of this commit is adding a unit test to the arquillian test framework

    • BZ 834019 ] the actual code fix to push out the new rescheduled metric - will later be checking in test code to help test this

    • BZ 834019 ] enhancement to the arquillian stuff so we can have code that can templatize reusable plugin descriptors. this also has a reusable discovery component. This includes LateMeasurementRescheduleTest that will hopefully, eventually test this BZ but the actual test method is essentially a stub right now

    • Merge branch 'master' of ssh://git.fedorahosted.org/git/rhq/rhq.git

    • BZ 821058 ] refactor the unit test to use the templatized descriptor stuff. we now have a reusable descriptor that defines a server with two metrics that this test is using

    • BZ 834019 ] unit test to make sure we push out the schedule properly for late-collected metrics

    • BZ 836664 ] allow oracle plugin to connect using the "service name URL". Thanks go to Richard Hensman for the patch.

    • fix the versions to mimic the actual version strings in the distros

    • add database test module to eclipse

    • add mysql test classes to eclipse

  • John Sanda <jsanda@redhat.com> (26):

    • removing unnecessary plugin dependency to work around maven 3 compatibility

    • BZ 822713 ] Adding support for disabling tags in the UI

    • Adding version string for CR1 build

    • adding version string for beta release

    • BZ 802796 ] providing more info about the deployment timeout

    • BZ 824129 ] Do not treat quotes as ordinary characters

    • BZ 822299 ] Display better error message and no exception when agent is unreachable

    • BZ 822299 ] adding serial version uid and javadocs

    • BZ 822299 ] changing servialVersionUID to be consistent

    • BZ 824129,829309 Fix quote parsing

    • BZ 823691 ] Parameterize hard coded ports

    • BZ 823691 ] parameterize properties in agent config files

    • BZ 823691 ] removing debug code

    • BZ 831603 ] Do not allow plugin defined templates to be deleted

    • BZ 786614 ] Add some error logging if we cannot find a resource container

    • BZ 667896 ] Throw exception if multiple trait expressions specified

    • BZ 667896 ] Adding more tests to verify we do not allow multiple expressions of the same type

    • BZ 826716 ] Adding tests for plugin and resource config expressions.

    • BZ 826716 ] Improve error reporting in the UI

    • BZ 838861 ] Handle empty zip file on java 7

    • BZ 846715 ] Taking groovy server plugin out of build

    • BZ 802796 ] Provide more details for time outs

    • BZ 826604 ] fix parsing of quoted named args

    • BZ 848893 ] Only hide empty groups for availability queries/searches

    • Delete any old copy of AS 7 zip file to force download

    • BZ 802796 ] Do not report entire stack trace for display in UI

  • Lukas Krejci <lkrejci@redhat.com> (72):

    • BZ 816593BZ 816587 - Adding unit tests for content retrieval and detection in standalone server.

    • clean up the jboss as installs from the tempdir after the integration tests completed.

    • Initial refactoring of the scripting infrastructure to allow language support to be defined in a standalone module (and allow multiple script langs in the future).

    • An attempt to use Rhino 1.7R3 as a script engine. This will most probably not work because of the number of changes in behavior between phobos-based ScriptEngine and the JDK-bundled ScriptEngine.

    • BZ 822880 ] - Make sure to NOT discard any pending DB changes before masking the configuration.

    • BZ 822905 ] - Make sure to always disable the resource upgrade after it has finished, even after a failure.

    • BZ 822905 ] - modified the unit tests for checking that the resource upgrade is actually disabled after resource upgrade.

    • BZ 801638 ] - Modified the as7 cluster script to use the live configs of the servers in question to overcome the possibility of the server having stale data (or even having no config data at all).

    • ignore in git the *~ files produced as backups by some text editors

    • Initial impl of modules in the javascript CLI.

    • Experimental and unfinished support for python in the CLI.

    • BZ 802550 ] - rewording the docs on rhq.agent.plugins.child-discovery.delay-secs to better explain what it actually means.

    • BZ 829944 ] - make the resource type fingerprint robust against ordering of different kinds of definitions in the resource type.

    • BZ 829751 ] - Make sure deploying a package updates the internal info about it.

    • BZ 832090 ] - Make sure to activate the resource only after it has been synced with the server during manual add so that the subsystems dependent on the resource id get the correct one.

    • Trivial - code formatting

    • BZ 832090 ] - adding an integration test for checking that all the PC subsystems obtain the synced resource after manual add.

    • Merge branch 'master' into lkrejci/modular-scripting

    • BZ 801551 ] - Make sure the server name is not editable when upgrading existing server in the installer.

    • Making it all compile again and provide basic abstractions to cut the code completion out of the CLI.

    • Renaming "RhqManagers" to "RhqManager".

    • Removing all the get*Manager() methods on the RhqFacade and replacing it with one generic getProxy(Class) method. This method returns a proxy of the original remote API interface (i.e. the interface is NOT simplified).

    • Resolve the initializer using the ScriptEngine.NAME parameter rather than the language name - this is in line with how the different language support modules identify themselves.

    • Fixing the local client tests and some leftover compilation errors in the code after the RhqFacade refactoring.

    • The simplified interfaces no longer inherit from the remote interfaces. They just provide the same (or simplified) methods.

    • CLI code completion should now be language independent.

    • Rename the method to be more descriptive.

    • InterfaceSimplifier now mirrors the generic type signatures and annotations on all levels. The newly generated class preserves the generic type signatures and annotations on the class, method and method parameter levels.

    • The CLI interactive console correctly handles the case where the completor outputs some additional text to the output. The output is flushed and the commandline is re-printed underneath it.

    • Javascript completor now correctly outputs the signatures of the methods.

    • Merge remote-tracking branch 'origin/master' into lkrejci/modular-scripting

    • A couple of changes in this commit: 1) RhqFacade.getManagers() returns a Map<RhqManager, Object> instead of a Map<String, Object>. Strong typing is good. 2) ScriptSourceProviders hooked up with the ScriptEngineFactory and the StandardBindings so that they can be installed into the script engine and use the standard bindings or the rhq facade to do weird and wonderful things. A couple of basic impls of the ScriptSourceProviders were sprinkled about the codebase. 3) ScriptSourceProviders are now loadable from META-INF/services so that it is easy for third parties to add their own impls. 4) A new method added to RepoManagerRemote that enables download of an arbitrary package version from a repository (this is used by one of the script source providers to remotely download a script from the server).

    • Fixing the build. The RHQ's javascript language module now bundles Rhino in the jar itself to ease the deployment, added the javascript module as a test dep to a number of modules that have tests utilizing scripting.

    • Fixed a problem with copying annotations with no attributes.

    • LocalClient now generates proxies inside a privileged block to correctly work in the restricted environment of the RHQ server where we disallow the scripts to do "unattended" JNDI lookups against the RHQ server.

    • Use the correct language name for the javascript language.

    • Make the summary print all the "summary" properties of the object, including the inherited ones from the super classes.

    • Improvements to javascript code completion - we now are able to complete the properties/functions of native javascript objects. This makes code completion on required modules return the defined functions.

    • Merge remote-tracking branch 'origin/master' into lkrejci/modular-scripting

    • Fixed the method resolution in the abstract rhq facade proxy. The old impl assumed the simplified class implements the original interface which is no longer true. I therefore added some auxiliary annotations on the simplified class and methods to aid in recovering the original method even though the simplified interface no longer implements the original interface.

    • Adding a script source provider able to handle the "file://" scheme. This is for the scripts to be able to access the file system using absolute paths.

    • Setting the require function to NOT be sandboxed (which doesn't make much difference) and make the require function use the correct scope so that it can resolve all the variables defined by the script engine.

    • Do not compile the scripts to new classes to save the permgen space.

    • Bumping Rhino to 1.7R4.

    • Merge remote-tracking branch 'origin/master' into lkrejci/modular-scripting

    • Finishing up the python support for CLI.

    • Fixing the last javascript specific thing in the CLI - no more assumptions about the format of the error message.

    • Merge lkrejci/modular-scripting into master

    • make sure CLI scripts on the server redirect standard and error output to the tracked writer.

    • Fixing the dev profile of the lang support modules to copy the final repackaged jars to the dev-container.

    • BZ 839780 ] - The scriptengine providers now can tell the file extension of the scripts they support. The alert-cli plugin then picks the correct script engine implementation for a script based on its file name extension.

    • Making the package scanning of the python language support configurable through additional RHQ-specific system variables. Update the RHQ server startup scripts to configure the python's package scanning so that it properly discovers domain jar and its packages and classes. This is then used to pre-import domain classes into the script context for the alert scripts.

    • BZ 844495 ] - Fixing the inconsistency in the string handling introduced by Rhino 1.7R4. The new version of Rhino introduced some performance optimizations in the script concatenation which confused the script engine, which is based on the previous versions of Rhino.

    • BZ 846269 ] - AS5's shutdown operation doesn't require availability to be up.

    • BZ 846623 ] - When creating the "child" alert definitions of group or template alert definitions, pass the real user that creates the alert def and circumvent authz. This behaves exactly the same as before but instead of bypassing the authz by passing the overlord when creating the child alert, a new local SLSB method is used that doesn't perform the authz checks and can therefore receive the original user that request the creation of the group/template alert def.

    • BZ 847804 ] - make sure to fetch the latest known resource config through the proxy factory.

    • BZ 848066 ] - The group resource configuration page shows the config editor again Also made the layout consistent with the single resource config page by moving the button bar to the bottom of the page.

    • BZ 834353 ] - Distinguish between BRMS 5.(1|2).0 and EWP 5.1.x by looking for BRMS specific jars in the client directory.

    • BZ 840662 ] - Python scripting is now bundled by default with RHQ. It can be excluded by explicitely switching off the "bundle-additional-script-languages" profile. E.g. mvn clean install -P '!bundle-additional-script-languages'

    • Duplicating all the tests that use scripting language to have both javascript and python versions.

    • BZ 846623 ] - Finishing the fix: 1) Make sure the UI doesn't contain stale data after an update of a alert def. 2) Provide a "copy-creation" of alert definition used for syncing the defs on a resource with the corresponding group and template alert defs (this is done by adding a "validateNotificationConfiguration boolean to the AlertDefinitionManagerLocal.createAlertDefinition()). 3) A new method for updating dependent alert defs (similar to previously added method for creating dependent alert defs) 4) Make sure conditions and notifications are loaded before leaving the update methods so that lazy load exceptions don't occur. 5) Only perform validation and finalization on new or changed notifications. 6) Marking several methods that supported the old JSF UI and are unused as deprecated. 7) new integration tests to check the behavior of alert senders that modify the notification configuration.

    • Making the module loading conforming with CommonJS:

    • Simplified the existing source providers to use URI authority and paths instead of the whole scheme-specific part.

    • Fixing the FileSystemScriptSourceProvider to only support the absolute paths. This is so that it conforms with the "file" scheme known from browsers, etc. The relative path support was done through handling URIs that actually didn't conform to the spec.

    • BZ 852169 ] - Modifying the rhq://downloads script source providers to download the scripts from a new download section with scripts. Also added the UI for listing the scripts.

    • Fixing the RhqDownloadsScriptSourceProvider unit test.

    • BZ 852169 ] - Add a copy of the downloadable sample modules to the CLI samples/modules, so that they're available locally, too. Updated the wording in the README file in samples to reflect the current state of things.

    • BZ 803737 ] - API checks based on clirr plugin

    • BZ 803737 ] - adding the core/native-system module to the API checks.

    • BZ 803737 ] - Adding the ignore rules for intentional API changes (apart from AS7 plugin that I leave for other to investigate and fill in).

    • Adding generic signature and @Override to get rid of code-style warnings.

    • BZ 803737 ] - Adding API difference justification for code change introduced by commit bf4b25f421769909e886eb42f7b99c66b207b200.

  • Mike Thompson <mithomps@redhat.com> (48):

    • BZ 817688 ] Change GWT compile style to "Pretty" to reduce application size. Gives us the best size/performance while still providing stack traces with source file names and line numbers.

    • Trivial: remove comment that is no longer relevant from CoreGUI.gwt.xml

    • Update the /etc/m2/settings.xml with PRETTY gwt.style as new default compile option.

    • Update RESTeasy jars to 2.3.3.Final from 2.3.2.Final

    • Increase GWT compile worker threads from 2 to 4. Decreases compile time.

    • Change GWT soyc report generation from true to false as default. This report is used on demand and can be turned on if we need to view it.

    • BZ 821978 ] UXD global UI change to checkboxes in grids. Eliminated unchecked minus sign and replace green checked mark with black checked mark.

    • Trivial: Remove usused class – EnhancedListGrid.

    • BZ 824005 ] UXD enhancements to Recent Alerts Page. Ack flag adjustments.

    • Remove unused entry Search Entry point. SearchGUI.java is an unused EntryPoint probably left over from integration with legacy jsf app.

    • Merge branch 'search-noentrypoint'

    • Fix SmartGWT maven archetype to have proper doctype and IE8 fallback as our app. Support cases produced will behave consistently with our app.

    • BZ 830323 ] Large artifacts get packaged in war file. Remove symbolMap data from GWT compiled war file.

    • BZ 825230 ] Some measure names are not readable in JON EPP plugin. This is actually a global layout issue in the resource measurements portlet.

    • BZ 825230 ] Eliminate some of the space in the layout between the resource measurement sparkline graphs and the resource name link.

    • Minor: Change icon strings to IconEnum for better type safety.

    • BZ 734490 ] AS7 plugin: resource config: 'Module Name' member props of 'Installed Extensions' map should be read-only

    • On Resource Detail Configuration Tab - Move Save Button bar down to bottom of screen (from top) to match other button bars.

    • BZ 815305 ] Min/max constraints on PropertyList not honored. Change IntegerItems to SpinnerItems on configuration screens making sure validations still work as SpinnerItem validations is little different than IntegerItems.

    • Move the save button to bottom of screen on configuration tab for groups. This was just done for non-groups.

    • Add GZIP compression to REST reports.

    • Add Swagger documentation annotations to CSV Export Reports.

    • Trivial: fix incorrect imports on ConfigurationEditor

    • BZ 815305 ] Min/max constraints on plugin PropertyList not honored in UI.

    • For Test page move save button to bottom of screen for consistency.

    • HotFix: The min/max fields on PropertyDefinitionList broke some other plugins. I didn't see this until I created new schema. This is a temp fix until real fix.

    • BZ 733487 - Search bar saved searches menu ignores clicks] Replace existing GWT search bar with new smartgwt search bar.

    • BZ 815305 ] Min/max constraints. This second part of the fix addresses the database schema change and upgrade to schema 2.122.

    • Fix imports to follow RHQ eclipse standards.

    • BZ 815305 ] Min/max constraints. Fix db-upgrade.xml to addColumn instead of alterColumn and change column names to MIN_ENTRIES from MIN and MAX_ENTRIES from MAX so that we dont have any conflicts with other databases.

    • BZ 733487 New SearchBar] Fixed bug with return key in search bar not properly sending search. Added i18n.

    • BZ 733487 New SearchBar] Handle null search condition better.

    • BZ 838665 - Changing selected operation does not clear out parameters sent along with request]

    • BZ 841045 advisoryInfo-plain.xhtml is missing parameters on the repo-plain.xhtml link] applied patch from jlivings.

    • BZ 826224 Creation of Compatible Group fails with value too long for type character when a description is entered which is longer then 100 characters] Group names limited now to 100 chars to match DB.

    • Add i18n messages for ResourceGroupCompositeDataSource

    • BZ 845389 - Group without members with unknown status appears in every availability search result] Get rid of superfluous empty groups that show up as unknown availability.

    • Take out search optimization of not doing a search if the search term is the same as the last search. This is causing some stickiness and sometimes the search doesnt run if it was already cached and it thinks it has done a search but it hasnt (probably because of timing issues).

    • Remove unused parameter. Ended up not needing the criteria parameter.

    • Removed unused methods from ImageManager.

    • BZ 848529 - Creating a domain deployment spins and never uploads the WAR on IE8]. IE8 had issues registering the listener when the upload was complete. This was a regression caused by smartgwt3.0 upgrade.

    • Remove Opera browser support from GWT compile. Will speed up compile times from elimination of 7 language permutations.

    • BZ 848501 ] - IE8 rendering of resource measurement time overlaid on the actual metric name

    • Remove old search.js and search.css as no longer needed.

    • Optimize css properties in CoreGUI.css.

    • In addition to caching images also cache .jpg and *.png as there can be images (such as those from smartGWT) that dont match the /images/ pattern and also need to be cached.

    • Remove deprecated GWT Search classes that are no longer used as they were replaced by smartGWT search classes. Deprecated classes can be retrieved from history.

    • BZ 852223 ] IE8 rendering of resource measurement time overlaid on the actual metric name.

  • Richard Hensman <richard@onevisionconsulting.co.uk> (3):

    • Add support for monitoring table spaces to the Oracle plugin

    • Add support for monitoring Flash Recovery Areas to the Oracle plugin

    • Added Oracle ASM Disk Group Component to Oracle Plugin

  • Simeon Pinder <spinder@redhat.com> (25):

    • BZ 784162 ] Adding PosixGroup support to LDAP Group mechanism. - with change after checking the "Use PosixGroup" typically you'll use objectclass=posixGroup and 'memberUid' for the group filter.

    • BZ 784162 ] adding null value check for posix property, clarify posix label and details and put better ldap default values.

    • BZ 818952 ] adding the rest of support for c:group load and edits for BaseComponent for as7.

    • BZ 818952 ] adding Config Load and Update itests for regular cgroups.

    • BZ 823624 ] i)finish code changes except for jvmRoute population. ii)disabled Web Context child in plugin descriptor iii)set jvmRoute to empty string to disable discovery. iv) a few other related cleanup changes.

    • BZ 823624 ] refactor to no longer depend upon presence or components from mod_cluster for various reasons.

    • Add option-set values for some more resource-configurations for Security subsystem.

    • Missed one more option-set update.

    • BZ 826542 ] Adding support for security-domain child nodes (authentication=classic,authentication=jaspi,audit=classic,audit=classic,acl=classic,authorization=classic,identity-trust=classic,mapping=classic]. -Explicitly allows the creation of and update of N ModuleOptionType instances and support of N module options for each type instance.

    • BZ 826542 ] disable incorrect unit tests. More work necessary to get this to pass with Arquillian properly.

    • Adding ability to disable deletion of as7 artifacts after an integration test run. Ex. -Ditest.deleteRoot=false

    • BZ 826542 ] add a few tests to exercise crud of Security Domain and some of Module Option framework. - only added one of this type as discovery needs to complete in between creates and slows down process significantly. - we need to come up with another way of prepopulating the other SecurityDomain types before full discovery.

    • Revert " Adding ability to disable deletion of as7 artifacts after an integration test run. Ex. -Ditest.deleteRoot=false" This is not consistently working.

    • -Add a few more itests for SecurityDomain -exercises most of the Module Option Types -Remove Authentication (Classic) from ignore list -Add ability to override default discovery depth.

    • Fix problem with test Resource discovery and cleaned up names and properties.

    • -moved domain test into domain group and package -added longer sleep to TemplatedResource test to attempt to fix test run failures.

    • i)fix problem in resource key ii)up the discovery lag for loadUpdateTemplatedResourceConfiguration to try to fix invalid resource ids

    • BZ 828938 ] make sure reboot listener persists when agent is running in background.

    • BZ 828938 ] fix typo and add thread identification.

    • BZ 840512 ] workaround bug in persistence container.

    • BZ 840512 ] Fix for issue with Obfuscated properties affecting CSP credentials. - Removed earlier workaround for failed deobfuscation - Reimplement Obfuscation without symmetric Hibernate annotations - Now PostLoad is only used to deobfuscate for in memory use of Obfuscated properties.

    • BZ 839552 ] passed in the wrong configuration when overriding behavior for SecurityDomain as7 nodes.

    • BZ 840512 ] adding logic to defend against @PostLoad logic not being called after installation as expected.

    • BZ 839087 ] add support for ConnectorAddress naming as well.

    • BZ 839087 ] a few lines more of documentation.

  • Stefan Negrea <snegrea@redhat.com> (75):

    • BZ 817806 ] Update the CMP subsystem configuration to match the latest server definition.

    • Update d2d start script to the latest version for RHQ.

    • BZ 817808 ] Moved read-only properties to metrics and added missing operations to the HornetQ server.

    • BZ 817808 ] Add metrics and operations to JMS Queue and JMS Topic sub-resources.

    • BZ 817808 ] Update Security Setting and Connection Factory subresources.

    • BZ 817808 ] Add Connector, In VM Connector, Acceptor, In VM Acceptor, Address Setting, Grouping Handler, Divert, and Queue sub-resources to HornetQ server.

    • Avoid crashing when the type is a complex map not typed properly (D2D tool only).

    • BZ 817808 ] Add support for Core Address sub-resources for HornetQ. This sub-resource is runtime-only, so all the properties are read-only.

    • BZ 817808 ] Add support for Pooled Connection Factory and updated the resource descriptor for Connection Factory.

    • BZ 817808 ] Add support for Remote Acceptor and Connector sub-resources to HornetQ.

    • BZ 817808 ] Add support for Connector Service, Discovery Group, Bridge, Path, Broadcast Group, and Cluster Connection subresource for HornetQ server.

    • BZ 817808 ] Updated socket-binding properties for all HornetQ subresources with option-source.

    • BZ 820757 ] Update descriptor for HornetQ server subresource of deployments.

    • BZ 817802 ] Added sub-resources (log-store, transactions, and participants) for trasactions subsystems.

    • BZ 817805 ] Updated resource definition for JAXR subsystem to match current AS7 configuration properties.

    • BZ 817814 ] Updated resource descriptor for Infinispan subsystem and sub-resources.

    • BZ 821878 ] Added managed server as parent for the web subsystem resource.

    • BZ 821904 ] Add the two missing classes back to the JBossAS5 plugin for backwards compatibility with embedded versions of the plugin container.

    • BZ 812755 ] Added memory pool and garbage collector sub-resources to JVM information.

    • BZ 646631, 790753, 820650 Updated AS5 deployer use a unique temp folder instead of a unique temp war name. The war name is used as-is by the AS5 deployer to determine the name of the application be deployed. Updated the deployer for new resources to correctly create the SHA256 file for exploded deployments.

    • BZ 646631, 790753, 820650 Add unit tests for resource context and deployer code changes.

    • BZ 811288 ] Updated various subsystems to match the definition for stanadlone, profile, and managed server. Where applicable a single resource definition was split into two or three resources based on the parent type and available properties, metrics, and operations.

    • BZ 811288 ] Updated various subsystems to match the definition for stanadlone, profile, and managed server. Where applicable a single resource definition was split into two or three resources based on the parent type and available properties, metrics, and operations.

    • BZ 811288 ] Module property can be undefined for security subsystem's subresources.

    • BZ 811288 ] Split the messaging subsystem into three resources based on parent resource.

    • BZ 811288 ] Adding back missing run-inside configuration for Profile.

    • BZ 811288 ] Add a separate descriptor for the logging subsystem only to managed server. The same descriptor will be shared by standalone and profile.

    • BZ 826066 ] Path resource has now templates and a property to allow users to create all four types.

    • BZ 827636 ] Updated Cache component and parents to use generic component code since the functionality required was implemented in a generic fashion.

    • BZ 828464 ] Adding the two argument constructor back for backwards compatibility with the ESB plugin.

    • BZ 828464 ] Mark the constructor as deprecated.

    • BZ 826066 ] Created unit tests and integration for the generic components that support templated resources.

    • Add two generic integration tests for Standalone server: 1) Update resoure configuration with the configuration loaded from server (no changes) 2) Execute all operations with zero arguments.

    • Update the test to retrieve the resource configuration only when they are defined.

    • BZ 831369 ] Use :whoami to retrieve server state because it does not require any parameters and is present on all resources. This will avoid warnings printed by using :read-attribute.

    • BZ 831377 ] Updated the plugin descriptor to allow decimal numbers for retry-interval-multiplier of a HornetQ cluster connection because AS7 allows it.

    • Added ignored operations and also pass in a configuration even if no params are available for the operation (to mach real application behaviour).

    • BZ 831757 ] Mark memory-pool-names list property as read-only.

    • Adding ignored resources along with reason for ignoring them to the load/update integration test.

    • Updates for generic integration tests. Moved generic code to base classes and added more ignored resources due to open JIRAs and BZs.

    • BZ 833089 ] Created a separate Local Cache resource descriptor with properties only applicable to this resource type.

    • BZ 833089 ] Remove more unneeded properties from Local Cache resource.

    • BZ 833187 ] Updates to support nullable lists. If a nullable list is empty then send back to the AS7 the null value instead of an empty list.

    • Add one more no-argument operation to the list of ignored operations.

    • BZ 835710 ] Removed WebservicesComoponent class and moved the two resources using it to the generic BaseComponent.

    • BZ 836527 ] Added a create content method for backwards compatiblity with the SOA-P plugin.

    • BZ 837510 ] Prevent the edge case by retrieving the clustered property from AS5 only when the first metric collection occurs. Also marked the getter deprecated to prevent further use of the property outside of this component.

    • BZ 828329 ] Adding inventory context to a resource context.

    • BZ 847674 ] Prevent exceptions from bubbling up because that is an indication the server is still down after the restart. Consider a thrown exception just a failed attempt to connect to the server, equivalent to success == false response for the test operation.

    • BZ 839643 ] Removed the property from the profile subsystem definition until the AS7 issue is resolved. The property is not important for profiles since the value is read-only and used only by the managed server. The value can still be read from the managed server itself.

    • BZ 829329 ] Enable the discovery of server-group deployments after a domain deployment is sent to server groups.

    • BZ 833187 ] A few more updates to :nullable list parsing and saving code. The original fix did not include the loading of such properties.

    • BZ 824818 ] Removing required from keepalive-time because the validation rules on AS7 are too complex and not consistent with the resource definition.

    • BZ 848800 ] Adding back old constructor signature for backwards compatibility reasons. Marked the old constructor as deprecated.

    • BZ 841684 ] Add config option to the wrapper script.

    • BZ 830841 ] Added a descriptive error message for cases where content is not available for a resource. The user is asked to try again in a few minutes if content was deployed recently since the deploy and discovery process might still be running.

    • BZ 849964 ] Increase the operation timeout to 30 seconds to avoid cases where the host is under heavy load thus making all managed server operations take longer than the default 10 seconds.

    • BZ 852534 ] Collapsed maps with null keys should be set to null. Attempting to send maps with null values to the application server results in validation errors.

    • BZ 846400 ] Add validation for components that rely connectors and discovery group name. A compoment should have either the connector or discovery group configured, but not both.

    • BZ 852552 ] Send unset properties to AS7 as null.

    • BZ 852552 ] Removing properties from the Transport subresource because the resource definition no longer contains them.

    • BZ 852552 ] Update mod-cluster property name to load-balancing-group. The "domain" alias no longer works for load-balancing-group causing configuration updates to fail with unknown domain property.

    • BZ 852552 ] Create a separate distributed cache definition because this resource contains addtional properties not available for invalidation and replicate caches.

    • BZ 852552 ] Update socket binding group to not send at all port-offset for non-standalone servers.

    • BZ 852552 ] Add two resource types to the list of ignored resources for this integration test. Both of these resources have special requirements with regards to configuration updates.

    • BZ 852552 ] Adding special validation for the transaction subsystem.

    • BZ 847674 ] Updated all the wait methods for reload, shutdown, and restart to have the same design. All the methods now take into account possible exceptions for the test operation sent to the application server.

    • BZ 852552 ] Updates to set correctly all the data-source and xa-data-source properties that do not support null values and cannot be undefined.

    • BZ 852632 ] Remove allow-direct-connections-only property from configuration to prevent sending the value to the application server. If this property is not left undefined, the configuration file for the server becomes invalid if the user attempts to use discovery-group-name.

    • BZ 854903 ] Corrected the logic to allow creation of resources without configuration.

    • BZ 851186 ] Updated the way default values are applied to fields on unset change.

    • BZ 857441 ] Update Sigar version

    • Add generic unit tests for loading and updating resource configuration and executing noarg operations for AS7 host controllers.

    • Update test priority to match other integration tests for host controllers.

    • BZ 859512 ] Execute :read-resource if whoami fails to correctly detect the server state. :whoami exists for the majority of the resources, the only exceptions are resources that do not have the security context established by AS7.

JBoss.org Content Archive (Read Only), exported from JBoss Community Documentation Editor at 2020-03-12 12:33:30 UTC, last content change 2012-10-04 08:22:41 UTC.